Text image review process

ABSTRACT

Techniques that facilitate review of bitmapped representations of text in a file are described. In some embodiments, one or more signals representative of cursor movements over a bitmapped representation of text in a bitmap image may be received. One or more selected text elements may be determined based on the cursor movements. Determining may include searching a data structure, separate from the bitmap image, which includes information regarding text element locations corresponding to the bitmapped text representation in the bitmap image. A portion of the bitmapped representation of text corresponding to the determined selected text elements may be highlighted.

BACKGROUND

1. Field

Subject matter disclosed herein relates to a process for commenting on or for editing electronic content comprising text.

2. Information

A process for developing, reviewing, or editing visual content may involve many details or aspects. Such aspects, for example, typically may include one or more reviewers or editors reviewing at least portions of visual content in the form of images, video, or other visual information. Increasingly, reviewers or editors for particular visual content are located remotely from one another. In such a situation, it may be advantageous to electronically transport visual content among reviewers or editors, such as by processes involving electronic mail or the Internet. Upon or after completion of a reviewer or editor's task, electronic content may be retrieved and sent to another reviewer or editor. For example, an editor may send content to a first reviewer, wait for notification that the first review has complete a task, then send the content to a second reviewer, and so on. Since several members may be involved in processing, reviewing, or editing such content, a process to review content may be relatively long or relatively complex. Managing or working with such a process for editing content may thus be complex and such complexity may make it error-prone. Accordingly, there is a need to streamline or simplify an electronic content editing process.

BRIEF DESCRIPTION OF THE FIGURES

Non-limiting and non-exhaustive embodiments will be described with reference to the following figures, wherein like reference numerals refer to like parts throughout the various figures unless otherwise specified.

FIG. 1 is a flow diagram of an electronic content editing process, according to an embodiment.

FIG. 2 is a schematic diagram illustrating an electronic content editing process, according to an embodiment.

FIGS. 3 through 10 are representations of screenshot views of a user display, according to all embodiment.

FIG. 11 is a sample listing of a markup language code, according to an embodiment.

FIGS. 12 through 15 are representations of screenshot views of a user display, according to an embodiment.

FIG. 16 is a flow diagram of an electronic content editing process, according to an embodiment.

FIG. 17 is a flow diagram of an electronic content editing process, according to an embodiment.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are set forth to provide a thorough understanding of claimed subject matter. However, it will be understood by those skilled in the art that claimed subject matter may be practiced without these specific details. In other instances, methods, apparatuses, or systems that would be known by one of ordinary skill have not been described in detail so as not to obscure claimed subject matter.

Some portions of the detailed description which follow are presented in terms of algorithms or symbolic representations of operations on binary digital signals stored within a memory of a specific apparatus or special purpose computing device or platform. In the context of this particular specification, the term specific apparatus or the like includes a general purpose computer once it is programmed to perform particular operations pursuant to instructions from program software. Algorithmic descriptions or symbolic representations are examples of techniques used by those of ordinary skill in the signal processing or related arts to convey the substance of their work to others skilled in the art. An algorithm here, and generally, is considered to be a self-consistent sequence of operations or similar signal processing leading to a desired result. In this context, operations or processing involve physical manipulation of physical quantities. Typically, although not necessarily, such quantities may take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared or otherwise manipulated. For example, one or more portions of a memory device may store signals representative of data and/or information as expressed by a particular state of the memory device. In an implementation, an electronic signal representative of data and/or information may be “stored” in a portion of a memory device by affecting or changing the state of such portions of the memory device to represent data and/or information as binary information (e.g., ones and zeros). As such, in a particular implementation, such a change of state of the portion of memory to store a signal representative of data and/or information constitutes a transformation of a memory device to a different state or thing.

It has proven convenient at times, principally for reasons of common usage, to refer to such signals as bits, data, values, elements, symbols, characters, terms, numbers, numerals, or the like. It should be understood, however, that all of these or similar terms are to be associated with appropriate physical quantities and are merely convenient labels. Unless specifically stated otherwise, as apparent from the following discussion, it is appreciated that throughout this specification discussions utilizing terms such as “processing,” “computing,” “calculating,” “determining” or the like refer to actions or processes of a specific apparatus, such as a special purpose computer or a similar special purpose electronic computing device. In the context of this specification, therefore, a special purpose computer or a similar special purpose electronic computing device is capable of manipulating or transforming signals, typically represented as physical electronic or magnetic quantities within memories, registers, or other information storage devices, transmission devices, or display devices of the special purpose computer or similar special purpose electronic computing device.

The terms, “and,” “and/or,” and “or” as used herein may include a variety of meanings that will depend at least in part upon the context in which it is used. Typically, “and/or” as well as “or” if used to associate a list, such as A, B or C, is intended to mean A, B, and C, here used in the inclusive sense, as well as A, B or C, here used in the exclusive sense. Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of claimed subject matter. Thus, the appearances of the phrase “in one embodiment” or “an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in one or more embodiments. Embodiments described herein may include machines, devices, engines, or apparatuses that operate using digital signals. Such signals may comprise electronic signals, optical signals, electromagnetic signals, or any form of energy that provides information between locations.

In one or more embodiments, a graphical user interface (GUI) may refer to a program interface that utilizes displayed graphical information to allow a user to control or operate a special purpose computing platform, for example. A pointer may refer to a cursor or other symbol that appears on a display that may be moved or controlled with a pointing device to select objects or input commands via a GUI of a special purpose computing platform, for example. A pointing device may refer to a device used to control a cursor, to select objects, or to input information such as commands for example via a GUI of a special purpose computing platform, for example. Such pointing devices may include, for example, a mouse, a trackball, a track pad, a track stick, a keyboard, a stylus, a digitizing tablet, or similar types of devices. A cursor may refer to a symbol or a pointer where an input selection or actuation may be made with respect to a region in a GUI. Herein, terms such a “click” or “clicking” may refer to a selection process made by any pointing device, such as a mouse for example, but use of such terms is not intended to be so limited. For example, a selection process may be made via a touch screen. However, these are merely examples of methods of selecting objects or inputting information and claimed subject matter is not limited in scope in these respects.

In an embodiment, an electronic content editing process may allow one or more editors or reviewers to seamlessly or efficiently review, comment on, or edit electronic content or to exchange reviewed or edited electronic content among one another. In one implementation, electronic content may comprise visual content including, for example, images, video, or other visual information, including text or motion of an interactive user environment. Of course, this is merely one possible example. Many forms of content other than visual content may also be processed.

Such a content editing process may provide benefits such as allowing reviews, comments, and/or edits to be rendered or consumed in a variety of contexts, including, but not limited to, on a network, such as a local area network (LAN), a wide area network (WAN), or the Internet, where reviews, comments, and/or edits may be seen relatively close in time to the context of a presentation, if desired (a “review”); as a summary, where comments or edits may be shown outside the context of a review, but may be accompanied by reference to edited images, videos, and/or audio information associated with the comments; or presented within a desktop authoring application GUI, via a review panel for example, where comments may be sorted, filtered, checked off as complete, and/or viewed in the context of an edited document or documents, such as the InDesign® desktop publishing applications, available from Adobe Systems Incorporated of San Jose, Calif. Details of such examples will be explained below. Of course, such a description of an electronic content editing process and its benefits is merely an example, and claimed subject matter is not so limited.

Such an electronic content editing process may be facilitated, at least in part, by a special purpose multimedia computer platform, such as Adobe Systems' Creative Suite® collection of graphic design, video editing, or web development applications, for example. Such a process may also be facilitated, at least in part, by an additional special purpose multimedia computer platform, such as Adobe Systems' Flash® multimedia platform, which may provide a platform for editors or reviewers to conveniently exchange such content via an electronic network, intranet, or the Internet, for example. Herein, “editor” may refer to a person who designs, creates, edits, or reviews electronic content. “Reviewer” may refer to a person who reviews such electronic content, for example. Additionally, “user” may refer to an editor or a reviewer, for example. Of course, claimed subject matter is not limited to such definitions, and roles or activities among editors or reviewers may switch or blend, for example. In a particular embodiment, reviewers or editors may be electronically messaged regarding availability of electronic content for review. Such electronic messaging may help to avoid or reduce lag times that may ordinarily exist in an editing process involving multiple participants. An embodiment of an editing process may also include electronically supplying electronic content to reviewers or editors for completion of tasks in accordance with a schedule or time limitations, which will be described in further detail below. Such a process may allow convenient collaboration among reviewers or editors by providing electronic content for review or electronic communication among reviewers and editors without any particular action by reviewers or editors beyond reviewing, commenting, or editing.

In an embodiment, at least some tasks may comprise a more streamlined, more user friendly process for commenting upon or editing electronic content, such comments or edits being captured in electronic form. In this particular context, the term comment is intended to refer to a message that is provided with respect to electronic content that may be involved with one or more edits of electronic content, although it may take any one of a variety of forms. For example, it may comprise text, visual or audio content or any other communication intended to convey a message. Typically, although not necessarily, the message may also be intended to explain, illustrate, question, expand upon, critique, or otherwise edit the particular electronic content that is associated with the message. A reviewer or editor may make a comment about or edit a particular portion of electronic content, for example. In a conventional review process, a reviewer may need to explain or describe what particular portion of electronic content he or she is commenting on, so that one reading the comment may realize what the comment is about. For example, such a comment may be like, “Regarding the second sentence in the text in the upper-right portion of the photo, I think it should have a larger font”. In this example, a large portion of the comment may have been needed to establish the context of the substantive portion of the comment or edit. However, in a particular embodiment, a comment or an edit, for example, may be electronically associated or grouped with a portion of electronic content, such as a snapshot, representing or comprising a particular portion of electronic content implicitly selected by the reviewer making the comment or performing the editing. Accordingly, one who is later reading the comment or reviewing the edits may also view an accompanying snapshot to which the comment pertains with the appropriate edits. Here, for example, this both saves the person making the comment or edit time and makes the context more clear to the person reviewing the comment or edit. That is, in one embodiment, as an example, comments or edits that a reviewer or editor may make triggered at least in part by the content itself as well as at least some aspects of the content that may have triggered or produced such comments or edits may be captured electronically and communicated to others, if desired.

In one implementation, a reviewer making a comment or performing edits with respect to a particular portion of text included in visual content, such as a label of a photograph, may use a computer mouse, or other pointing or selecting device, to click or otherwise select the particular portion of the photograph, for example. In another implementation, a reviewer may make different types of comments or edits by simple gestures of a mouse or other pointing or selecting device. Accordingly, a reviewer need not select a different tool to make different types of comments. For example, a reviewer may click on visual content to create a comment regarding a specific position or to make an edit at that position, for example, which may be represented by coordinates, of a graphic. In another example, a reviewer may click and drag a mouse or other pointing or selecting device to highlight particular text on which the reviewer wishes to comment. In an implementation, such a mouse, other pointing or selecting device, and/or a GUI may provide a means for receiving one or more signals representative of cursor movements over text in an image. Such a mouse, other pointing or selecting device, and/or a GUI may also provide a means for highlighting at least a portion of text in an image based at least in part upon cursor movements and/or based at least in part upon signals representative of locations of elements of text in an image, for example. Subsequently, and without additional action by the reviewer, the reviewer may be prompted to type his or her comment or to make his or her edit without specific user action or instructions. In such an electronic content editing process, therefore, a reviewer need not explain or describe within the comment or edit what particular portion of text he or she is commenting on or editing. Likewise, the particular edits made, assuming there are some, may be catalogued and provided with the comments and edited electronic content, again, without specific user action or instructions. Instead, the reviewer may merely click on the portion of text and make a comment and/or edit that may subsequently be provided along with a snapshot of the particular portion of text. Thus, the individual receiving the edits with associated comments, in one example, may see for themselves the visual context that generated the edit and the comment; however, this “roadmap” may be created without any particular actions or instructions; rather, for the individual creating the edit, for example, the focus would be upon execution of the edits without being concerned about explaining or capturing them in language for a subsequent reviewer or editor.

Such a comment and associated edited content may then be electronically communicated among other subsequent reviewers or editors participating in an electronic content editing process, without any particular additional action by the reviewer making the comment or edit. Accordingly, such an embodiment of an editing process may provide participants with an efficient, convenient, or simple-to-use visual experience for commenting on or editing electronic content or collaborating among multiple reviewers. As indicated above, associating a comment with a particular portion of edited electronic content such as text may provide a reviewer or editor a convenient way to more quickly and effortlessly comprehend any edits to the electronic content.

In an embodiment, a reviewer may make an “actionable” comment regarding a particular portion of text included in visual content. Such an actionable comment may comprise a comment categorized by a reviewer as a “text replacement suggestion”, wherein the reviewer may propose, in the comment, replacement text to replace reviewer-selected text. An editor and/or author of a document comprising the text and visual content may, upon receipt of such an actionable comment, choose to accept the text replacement suggestion by, for example, a mouse click on a displayed button. In a one implementation, such a particular portion of text included in visual content may be identified by structural data associated with the visual content. Such structural data may include an identifier for text flow and/or character offsets identifying start and/or end of a text selection. To illustrate by a particular example, structural data may include “characters 5 through 15 of text story 273_0”, which may identify 5^(th) through 15^(th) characters of a text portion named “text story 273 0”. Of course, such details of visual content and review processes are merely examples, and claimed subject matter is not so limited.

FIG. 1 is a flow diagram of an electronic content editing process 100, according to an embodiment. At block 101, a reviewer located at a client device, for example, may view electronic content on a display of the device. Such electronic content may have been downloaded from a server or stored locally on the client device, though claimed subject matter is not so limited. In one particular implementation, such electronic content, comprising visual content, may be rendered by an application, such as a graphics editing application, for example, which may reside on a client device. In another particular implementation, such electronic content may be rendered by a network browser residing on a client device that receives information from a network server, for example. Such implementations will be discussed in greater detail below.

In a particular implementation, visual content may comprise various graphical elements including an image generated from a bitmapped representation of text. Such a bitmap representation may comprise a Joint Photographic Experts Group (JPEG) document, for example. Upon or after reviewing such visual content, a reviewer may choose to make or post a comment or perform edits regarding text included in the visual content, for example. A reviewer may select all or a portion of text to be consequently associated with the reviewer's comment or edits, as at block 102. A selection of text may comprise selecting a point at or near a region of text using, for example, a pointing or selecting device, such as a mouse (e.g., clicking on the point using a mouse or other selecting device), and subsequently selecting a desired portion of text (e.g., clicking on a point in a text region and dragging a cursor to select the desired text using a mouse or other selecting device). Selecting such a bitmapped representation of text may involve receiving signals from a pointer device through a GUI that represent a user's cursor movements over the text included in visual content. Selected text may be displayed in a highlighted fashion based at least in part upon cursor movements and based at least in part upon locations of elements of the text included in the visual content. Here, such elements may comprise characters, words, and/or other sections or portions of text, for example. Such elements may have a sequential relationship with one another. For example, one character may follow another character in a word; one word may follow another word in a sentence, and so on. As explained in further detail below, information regarding such text element locations may be provided by a markup language document, such as an extensible markup language (XML) document, for example, which may be maintained separately from bitmapped image data used to generate an image of the text.

Subsequent to such a selection of text, a reviewer may be prompted to enter his or her comment or edit, as at block 103. Such a prompt may comprise a displayed graphical input box with a blinking text cursor, just to name an illustrative example. At block 104, a reviewer may enter a comment or edit, which may subsequently be grouped or associated with a bitmapped representation of an image of the reviewer's selected text, as at block 105. If desired, in some instances, edits or comments may be made by different individuals relatively close in time to one another. In such a situation, an embodiment in accordance with claimed subject matter may be employed for collaboration regarding the editing of text or other visual content, as explained in more detail below. Accordingly, such a comment, edit, and/or associated text (or a corresponding bitmap of the associated text) may then be available to other reviewers, as at block 106. For example, a comment, edit, or associated selected text may be communicated to a network server from a client device of a reviewer making or posting a comment or edit, wherein the network server may subsequently provide the comment, edit, or associated selected text to other reviewers having access to the network server, which will be explained in greater detail below. Of course, such descriptions of a comment posting or editing process are merely examples, and claimed subject matter is not so limited.

In an embodiment, and as mentioned above, an editor or reviewer may carry out tasks, such as edits or reviews of electronic content, on a variety of special purpose client computers or computing platforms able to communicate with a special purpose host or server computer or device. Such a server-client configuration, and benefits that such a configuration may provide, will be explained in further detail below. There may be no single type of special purpose client computer with which an editor or reviewer chooses to edit or review. In fact, such review participants may work with various types of special purpose devices, including a thin client computing device (e.g., network appliance), a desktop computing device, a mobile phone, or a personal digital assistant (PDA), just to name a few examples. Such devices have a variety of varying resident platforms or applications. Despite such a possible diversity of user equipment, a review process that maintains a user environment that is reasonably consistent across multiple users is a desirable goal.

A special purpose client device, which may herein be called simply a client device, may comprise a display and a GUI to display visual content for review or editing. In another embodiment, a client device may also comprise a network browser or similar application that enables the client device to interact with display information located on a network, such as the Internet. Of course, various embodiments of a client device and associated GUI are possible and it is not intended to limit claimed subject matter to a particular embodiment. Nonetheless, a variety of possible embodiments are described below without intending to be limiting in any way. Such a client device may, for example, in one embodiment comprise a special purpose machine capable of executing instructions represented by digital signals. A GUI may include a user interface to display an image, for example. A GUI may also include a user interface comprising a review panel to present one or more representations of multiple selectable review processes along with reviewer comments, edits, and portions of visual content respectively associated with the review processes. Such portions of visual content may comprise thumbnail representations of multiple selected portions of visual content to which an associated comment or edit refers, for example. Of course, such descriptions of a GUI are merely examples, and claimed subject matter is not so limited.

In a particular embodiment, and as mentioned above, a GUI may include a review panel for managing one or more review processes. For example, a review panel may display elements that are user-selectable for a variety of review-management operations, which will be described in further detail below. Such elements, which may be displayed in a listing or arrangement of one or more review processes, may include a thumbnail of visual content, status of a review process, or various review parameters respectively associated with the one or more review processes, such as the number of participating reviewers or the number of reviewer comments or edits posted, for example. A GUI may also include a special purpose computer application or other software to manage or manipulate visual content, such as Adobe Systems' Photoshop® graphics editing program or a word processing program.

In one implementation, an API provided by a special purpose host or server computer may be used to support the building of a GUI or review panel on a special purpose client device, such as a thin client device merely running a web browser, for example. Such an implementation may provide an advantage including an ability of reviewers or editors to work with a reasonably standardized review panel despite a possibility of working on special purpose client devices having a variety of operating systems, platforms, applications, or capabilities, as mentioned above. For example, such a standardized review panel may be displayed with a GUI of a variety of platforms or applications with which a reviewer or editor may prefer to work. In one particular embodiment, a review panel may be displayed in a foreground while contents or elements of an application run in a background. Accordingly, such an arrangement of a GUI may allow a user to manage a review process or work with one or more applications to edit or manipulate electronic content, for example, using an application-specific properties panel, which may include image controls, motion controls, opacity property controls, volume controls, or the like. Of course, claimed subject matter is not limited in scope to employing this particular product or to the approach employed by this particular product. Rather this is merely provided as one example of an embodiment including this capability; however, many other approaches to providing this capability are available and claimed subject matter is not limited in scope to any particular approach.

An ability of a reviewer or editor to work on a thin client may be an advantage provided by a client/server system, which may be included in one embodiment of a review process. Software residing on the thin client may merely include a user interface, certain frequently-used applications, or a networked operating system, for example. By maintaining a relatively small software load, a thin client may comprise a relatively small or low-powered device, while a server, or a cluster of servers, may comprise the full load of multiple applications, services, and stored information, for example. By shifting such computing burdens to a server, for example, while keeping multiple thin clients lightly loaded, users may expect easier system management, lower costs, as well as advantages of networked computing that include central storage/backup or easier to use security.

An electronic editing process, according to an embodiment, may operate based at least in part on a client-server network, wherein one or more servers may operate as a hub to implement such a process, serving one or more client devices, including, for example, a network appliance or a PDA. Editors or reviewers working on such client devices may be provided advantages such as improved communications or collaboration among one another. For example, comments or edits made by multiple reviewers may be communicated among the multiple reviewers via an electronic content management server that may provide a more consistent or more efficient user-experience (e.g., GUI) relatively independent of particular software applications, for example, that may be executing on a client device on which reviewers are working. Such a client-server network may use XML, or other content management language, to share information among one or more editors or reviewers, for example. In one embodiment, a specific or special purpose computing platform, such as a client device for example, may include a web browser or other application to communicate with a network, such as the Internet. In other words, exchanging or sharing applications, files, or electronic signals associated with an electronic content editing process may be facilitated by XML or other content management language, as explained below.

Therefore, such applications, files, or electronic signals may be located separately or together on any portion of an electronic network or specific computing platform. In a particular embodiment, a management service, which may comprise a specific apparatus executing software that performs management service operations, for example, may be used to share or organize comments. Although claimed subject matter is not limited in scope in this respect, it is noted that LiveCycle® Data Services software, for example, is available from Adobe Systems Incorporated. However, claimed subject matter is not limited in scope to employing this particular product or to the approach employed by such a product. For example, alternatively, XML or other content management language may also be used to share comments, such as importing comments as XML-formatted notes into a review panel. However, again, claimed subject matter is not so limited in scope.

As will be explained in further detail below, a format in which to share comments, edits, snapshots, and/or notes may be employed based, at least in part, on systems or equipment used by particular reviewers or the editor. For example, some reviewers may use tools that integrate relatively seamlessly that comply with XML or that are compatible with XML-formatted comments, while other reviewers may use tools that integrate relatively seamlessly that comply with or that are compatible with a management service, as described above. Of course, such a description of formatting is merely an example, and claimed subject matter is not so limited.

As was indicated, an electronic content review process may proceed independently of where such applications, files, electronic signals, or other information may be located in an overall system or network. For example, in a particular embodiment, an electronic content management server may transmit electronic content review signals to or from a special purpose client device for an editor or reviewer. In such a case, one may log onto a client-server system to begin participation in an electronic content editing process. In another particular embodiment, such as a desktop-based process, a special purpose or specific computing platform used by editors or reviewers, for example, may include a browser application to transmit signals to or receive signals from a server that operates to oversee or manage an electronic content editing process. In still another particular embodiment, a reviewer or editor need not be logged onto a client-server system to participate in a review process. Such participation may occur offline, wherein an electronic content management server may transmit an email or other electronic communication including electronic content and associated information of an electronic content editing process to a reviewer or editor. Though offline participation may not be real-time or interactive among other reviewers, such participation may be most convenient for a particular reviewer or editor, for example. Of course, such details regarding an electronic content editing process are merely examples, and claimed subject matter is not so limited.

FIG. 2 is a schematic diagram illustrating a summary of an electronic content editing process 700, according to an embodiment. An editor working on a special purpose client device 764, for example, may view, create, and/or edit visual content 766 via an editor display 703. Visual content 766 may comprise an image that includes text 768 as well as graphics and other elements, just to list a few possibilities. Such a display may include a window or canvas 762 to provide or present visual content 766 and a review panel 712 to manage a review process. To initiate electronic content editing process 700, an editor may, using review panel 712, for example, upload visual content or related information, as indicated by flow arrow 710, to a process management engine 701. Such a process management engine may reside on an electronic content management server, for example, and may comprise a special purpose computing apparatus capable of executing instructions represented by digital signals, for example. Herein, the terms “process management engine” and “electronic content management server” may be used interchangeably. In one implementation, process management engine 701 may provide an API to support the building of a GUI, such as review panel 712, on special purpose client device 764, as mentioned above. Process management engine 701 may provide process or electronic content management including signal capture, digital rights management, content services, or content management, just to name a few examples, which will be explained in further detail below. One potential example of a process or a system having the capability to provide such process or electronic content management may, for example, comprise a specific or special purpose apparatus executing the LiveCycle® software for editing visual content, available from Adobe Systems Incorporated, mentioned above. Of course, claimed subject matter is not limited in scope to employing this particular product. Rather this is merely provided as one example of accomplishing this capability; however, many other approaches to providing this capability are available and claimed subject matter is not limited in scope to any particular approach.

Process management engine 701 may provide review information to one or more reviewers working on one or more special purpose client devices 765, indicated by flow arrow 720. Such information may include visual content 785, which may have been previously edited, or reviewer comments placed in a comment panel 714, for example, in a reviewer display 706. In one implementation, process management engine 701 may provide an API to support the building of a GUI, such as comment panel 714, in reviewer display 706. Upon or after selecting particular visual content to review, a reviewer may electronically post comments or perform editing, which may be communicated to process management engine 701, as indicated by flow arrow 750. Such comments or edits may be associated with selected portions of visual content, coordinates, a time code, text flow, or other information representing portions of electronic content, such as visual content 785. Such coordinates, for example, may comprise those of a display or a canvas on which visual content is displayed. A time code may comprise a Society of Motion Picture and Television Engineers (SMPTE) time code. Such a time code may be used to identify selected portions of visual content, for example. Text flow may comprise text patterns, for example, that may be used to identify selected portions of visual content comprising text. Of course, these are just examples, and claimed subject matter is not so limited. A reviewer may also interact with other reviewers, via process management engine 701, perhaps in real time, as depicted by flow arrows 745. As depicted by flow arrow 760, process management engine 701 may electronically provide reviewed or edited visual content or associated comments to an editor, who may receive electronic notification that particular visual content has been reviewed, edited, or that associated review comments are available. In another implementation, an editor may electronically export comments or edits, including available electronic comments or edits from all reviewers and the editor, into a file 705 or storage medium, indicated by flow arrow 770, for example. Such a file may be electronically imported into visual content editor 795, indicated by flow arrow 780, which may comprise a visual content editing system such as Adobe Systems' Photoshop® graphics software or Premier Pro® system, for example. In still another implementation, process management engine 701 may communicate directly with visual content editor 795 so that reviewed or edited visual content or associated comments need not be exported or imported to or from process management engine 701 in a separate process. Using such a visual content editor, an editor may edit visual content, as indicated by flow arrow 790, to render “finished” visual content 798. Of course, such a process management engine is merely an example, and claimed subject matter is not so limited.

FIG. 3 is a representation of a screenshot view of a user display 113, according to an embodiment of an electronic content review process. Such a display and its associated GUI may be operated by a special purpose client device, such as client device 764 shown in FIG. 2 for example, including a thin client or other computing device, which may communicate with other displays via an electronic network, such as a LAN, a WAN, or the Internet, for example. Display 113 may comprise a window toolbar 107 that includes indicator 111 to display log-in status regarding a signal or communication connection to an electronic content management server or host, which will be explained in greater detail below. Display 113 may also comprise application window 109 as a GUI for a computing application or platform to manage or manipulate visual content, such as performing edits, for example. Such a window may include a canvas area for displaying visual content 108, tabs 110 for selecting among multiple pages of a project, and a toolbar 112 for controlling, editing, or manipulating visual content 108. Visual content 108 may comprise a JPEG or other type of formatted file, for example. Regardless of the particular type of file, visual content 108 may include, as illustrated in FIG. 3, elements such as text 168, a graphical logo 169, and/or other various graphics 171. Tabs 110 may be used to select among multiple renditions of a project, wherein a rendition may comprise a document of an application, such as an Adobe Systems' Photoshop® graphics document, for example. At the beginning of a review process, visual content 108 may be selected by an editor from data storage devices, a network, or created by an application editor within an environment hosted by a computing application or platform, as mentioned above. Of course, a Photoshop® graphics document and a JPEG file are merely examples, and claimed subject matter is not so limited.

FIG. 4 is a representation of another screenshot view of user display 113, according to an embodiment of an electronic content review process. Display 113 may include a review panel 115 for managing editing or reviewing processes. Review panel 115 may be displayed in a foreground of visual content 108 or other portion of application window 109. Whether such a review panel is displayed may depend at least in part on a user selection of available options, for example. To illustrate one possible implementation, review panel 115 may be displayed if a user right-clicks a mouse and selects a command in a drop-down menu to display such a review panel. Of course, such an implementation is merely an example, and claimed subject matter is not so limited.

Upon or after completion of selecting, editing, and/or creating visual content 108, an editor, using review panel 115, may upload a page or document including visual content 108, or a portion thereof, into a portion of a memory device on an electronic content management server on a network, for example. In a particular embodiment, such a memory device may reside on an electronic content management server on a network. In the course of working with review panel 115, sub-panels, such as sub-panel 119, may be displayed to provide an editor with management options, for example. In the example illustrated in FIG. 4, sub-panel 119 may provide an opportunity to select among a number of review processes or to create a new review process. Of course, such details of a display or a review panel are merely examples, and claimed subject matter is not so limited.

Continuing with FIG. 4, review panel 115 may comprise dynamic or user-selectable content for managing one or more review processes. For example, review panel 115 may display elements that are user-selectable for a variety of review-management operations, which may be displayed in a listing or arrangement of one or more review processes 120. In a particular embodiment, review panel 115 may be generated using, at least in part, a special purpose multimedia computer platform, such as Adobe Systems' Flash® multimedia platform, as mentioned above, for example. A special purpose client device hosting a GUI used to display review panel 115 may communicate with an electronic content management server on a network, for example, to download information regarding one or more review processes that are stored with reference to a user-ID associated with the client device. In this fashion, review panel 115 may be populated with dynamic or user-selectable content or updated continually or from time to time. In this context, dynamic refers to the notion that such content may change, because of an update for example, without action by a user. Of course, such a relation between a special purpose client device and a special purpose network server is merely an example, and claimed subject matter is not so limited. In an embodiment, a host application or other software may execute on such a client device to provide a window comprising review panel 115. Concurrently, a special purpose multimedia platform, such as Adobe Systems' Flash® platform may be used in conjunction with Adobe Systems' CSXS routine library, for example, to provide content for review panel 115. For example, a special purpose authoring application, such as Adobe Systems' Photoshop® graphics editing program for example, may include such a CSXS library. In one implementation, one or more operations or routines included in a CSXS library may make a call to a host application, such as Adobe Systems' Photoshop® graphics editing program, located on a special purpose client device in order to display a review panel 115, which may be displayed in the foreground of other display content. In another implementation, a special purpose network server may transmit instructions to a special purpose client device, such as a thin client for example, to display a review panel. Subsequently, a special purpose network server may transmit information to a special purpose client device to provide such a review panel with information to populate information fields during, for example, a review process. Such information may include reviewer comments, edits, associated snapshots, and/or status of one or more review processes, just to name a few examples. Such information, as described above, may comprise dynamic or user-selectable content for managing one or more review processes, wherein such dynamic or user-selectable content may be updated continually or from time to time. In one embodiment, the underlying content on top of which a review panel is displayed in a foreground remains unaffected despite the presence of the review panel. Thus, a review panel may act as a display layer that is independent of other display layers, though claimed subject matter is not so limited

Continuing with FIG. 4, review panel 115 may comprise a list or other arrangement of review processes 120, a scroll bar 128 to scroll among multiple review processes, an instruction field 124 that may be selectively populated with instructions to operate the review panel, a toolbar 126, or a pull-down menu 130 for selecting among the list of review processes for example. In one implementation, such instructions may change from time to time, such as to reflect what review panel 115 is displaying at a particular time. For example, such instructions may include a short explanation of how to create a new review process, how to rearrange a sequence of pages in a review, or other instructions that may be relatively short enough to fit in instruction field 124.

In a particular implementation, the list or arrangement of review processes 120 may be organized or rearranged by a user using a mouse, or other pointing or selecting device, to click and drag, for example, individual review process listings above or below one another. In another particular implementation, a user may use an electronic content management server to organize or rearrange the list or arrangement of review processes 120 chronologically, alphabetically, by reviewer, by deadline, or by importance, just to name a few examples. In still another particular implementation, a user may use an electronic content management server to filter the list or arrangement of review processes 120 to show one or more subsets of the review processes. Such filtering, which may be selected by a user, may arrange review processes into subsets based at least in part on a variety of parameters, including reviewer, importance, or date of reviews, just to name a few examples. In a particular embodiment, pull-down menu 130 may include a selection to create a new review, which, upon or after selection, may create a new review structure at an electronic content management server on a network. Such a review structure at an electronic content management server may accommodate a review process to be managed via review panel 115, for example. The list or arrangement of review processes 120 may include a thumbnail image 122, which may comprise a snapshot of visual content associated with the list or arrangement of review processes 120, for example. The list or arrangement of review processes 120 may also include status information regarding the review process. Such status information may be useful for an editor, reviewer, or someone else to manage review processes.

In a particular embodiment, a review process may define an expiration time or a deadline, or may involve multiple participating reviewers posting multiple comments or edits. Accordingly, such status information may include the number of comments or edits posted by reviewers for a review process, the time such comments or edits were posted, the number of reviewers, the number of times the review process has been viewed, or a remaining time before a deadline, the time at which the review process is set to expire. A user may select a review process from the list or arrangement of review processes 120 by using a mouse, or other pointing or selecting device, to click on a particular review process, for example. Subsequently, review panel 115 may provide an option to view a larger-sized rendition of thumbnail image 122 so that a reviewer may view details of visual content, for example. Such a larger-sized rendition may be rendered by a host application, such as Adobe Systems' Photoshop® graphics editing program, to be displayed on a canvas area of window 109, for example. However, it should be noted that one of the benefits provided by an embodiment of an electronic content editing process as described is that a variety of host applications or graphics editing programs may be used, and claimed subject matter is not limited to a particular application or program. While viewing visual content, a reviewer may post a comment or edit or modify the displayed visual content. The reviewer may manage his or her review by using review panel 115, which may provide options to communicate his or her comments or edited or modified visual content to an electronic content management server so the comments, edits, or modifications may be viewed by other users. In addition to providing management functions for a review process, review panel 115 may display details or statistics regarding a selected review process, which will be discussed in further detail below with reference to an embodiment shown in FIG. 15. Of course, such details of a review panel are merely examples, and claimed subject matter is not so limited.

FIGS. 5 through 8 are representations of screenshot views of a user display, according to an embodiment. Such figures, for example, show an example progression of an editor managing a project in a review process, though claimed subject matter is not limited to such an example progression, of course. As shown in FIG. 5, display 113 may comprise visual content 108 in application window 109. Displayed in a foreground of such visual content may be an embodiment of review panel 115 resulting from a selection of a new review in pull-down menu 130 shown in FIG. 4, for example. Accordingly, review process listing 134 may prompt a user, which may be an editor, to select at least a portion of visual content 108 for a review process. Such a selection, for example, may be carried out by clicking and dragging a screen icon using a mouse or other pointing or selecting device. As a result, and shown in FIG. 6, a new window 140 may appear in display 113 that shows selected visual content 141. Window 140 may also prompt a user for a title 142 and/or caption 143 to be associated with selected visual content 141. In one implementation, a user may add additional content from a currently reviewed document or from other documents to a current review process. In another implementation, additional new review processes may be created by repeating the process above. Such a new review process may have a new name or identification and be represented in review process listing 134, for example.

As shown in FIG. 7, display 113 may comprise visual content 108 in application window 109. In the foreground, such visual content may comprise an embodiment of review panel 115 including an arrangement 164, for example, of a review process that includes three pages of renditions of a project created by an editor, for example. Also shown, and which may be a result of a user action, a pop-up menu 170 may prompt an editor to select an operation, including an operation to create a new review process, edit or delete pages of renditions of a project in a review process, end a review process, or publish a review process, just to name a few examples. If an editor selects an option to publish a review process, for example, a pop-up window 174 may appear, as shown in FIG. 8. Pop-up window 174 may prompt an editor for information to be used by an electronic content management server on a network to message one or more reviewers, for example. Such information may comprise reviewers' names, reviewer's electronic addresses, such as email addresses or cellular numbers, or names of one or more reviewer groups and their associated addresses, just to name a few examples. Pop-up window 174 may also prompt an editor for a password selection, an expiration date for a review process, or whether participants in a review process may be able to view one another's comments or edits, for example. An editor may also add customized information, such as an iconic image or a web address, among other possibilities. Upon completion, such entered information may be communicate to an electronic content management server on a network, which may then transmit a message to one or more client devices respectively associated with participants in the review process. For example, a reviewer selected by an editor may receive an email that informs the reviewer that electronic content, such as visual content, is ready for review. Such an email may also include an electronic file of the visual content as an attachment or an address, such as a URL address, where such visual content may be obtained. For example, such visual content may be stored on an electronic content management server on a network and may be accessible via a LAN, a WAN, or via the Internet. Of course, such details of a review process are merely examples, and claimed subject matter is not so limited.

FIG. 9 is a representation of a screenshot view of a user display 200, according to an embodiment. Such a display and its associated GUI may be operated by a special purpose client device, such as a thin client or other computing device, which may communicate with other displays via an electronic network, such as a LAN, WAN, or the Internet, for example. Display 200 may comprise a window toolbar 220 that includes indicator 206 to display log-in status regarding a signal or communication connection to an electronic content management server or host, as previously suggested. Display 200 may also include branding field 204, which may comprise a description, logo, icon, or a combination of such elements. For example, branding field 204 may comprise a logo that represents the particular entity engaged to create a set of visual content for a particular client. Display 200 may provide an application or platform environment 209 including a toolbar 212 and a canvas area for working with visual content 208. For example, such an application or platform environment may allow a user to edit, manipulate, process, and/or create slides, text, photos, marketing materials, brochures, and/or any other combination of content capable of being created electronically.

Display 200 is versatile enough that it may provide the user with that user's desired application or platform environment for working with visual content, such as one preferred by a particular reviewer, which need not comprise the same application or platform of another user. Accordingly, participants in a review process may have the benefit of being able to work with an application or platform of their choice, regardless of what application or platform was used to create or to subsequently modify the visual content, for example. As indicated above, application or platform environment 209 may include a canvas area for displaying or editing visual content 208. Such a canvas area may comprise a portion of a display that may be used to create, view, and/or edit electronic content, such as visual content, while working with a graphics program or application, such as one executing Adobe Systems' Photoshop® graphics software, for example.

Continuing with FIG. 9, such a user display 200, according to an embodiment, may be involved in a process of making a comment or performing editing regarding visual content 208. As discussed above regarding FIG. 1, for example, such a process may be sufficiently simplified so that a reviewer may merely select a portion of visual content to initiate a comment or edit-posting process, at least in one particular embodiment. For example, if a reviewer wishes to make a comment or perform editing regarding a particular portion of visual content 208, such as text 968, the reviewer may select the particular portion by clicking on or near the particular portion of visual content 208 to create a selection point 930. Of course, again, using a mouse or any pointing device for such a selection are among a number of possibilities, for example, and claimed subject matter is not limited to the use of a mouse. For example, a touch screen may be used, wherein “clicking” may be replaced by “touching”. A process of selecting a portion of visual content may be called content selection. Though the following example describes such an implementation, content selection need not be limited to selecting a portion of visual content wherein selection point 930 is used as a starting point for the area selection process (e.g., click on selection point 930 and drag to select an area of text). For example, content selection may be centered about selection point 930.

After choosing a selection point 930, a reviewer may click and drag pointing cursor 937 to create a text selection box 935. In one implementation, though text selection box 935 is shown in FIG. 9, such a text selection box need not be visible to a user in display 200. Instead, highlighted text may indicate to a user how he or she is selecting text as the user drags pointing cursor 937 from selection point 930 to a lower-right hand corner of text selection box 935. To illustrate, beginning at selection point 930, pointing cursor 937 may be dragged in a direction so that pointing cursor 937 moves to an endpoint 932. As pointing cursor 937 moved from selection point 930 to endpoint 932, portions of text 968 may be highlighted. Such highlighting may be performed one element at a time or one word at a time, for example, in response to the moving pointing cursor moving generally in a right/left direction, e.g., along the direction of the lines of text. However, if pointing cursor 937 is dragged in an upward/downward direction, then highlighting may be performed one line at a time, beginning by highlighting the portion of the first line of text at or near selection point 930 and ending by wrapping around and highlighting the next line(s) above or below selection point 930 to endpoint 932, to where pointing cursor 937 is dragged. In a particular implementation, the speed at which pointing cursor is dragged may determine, at least in part, whether text is highlighted one or more letters, words, lines, and/or paragraphs at a time, for example. In another particular implementation, selected text, or a portion thereof, may be subsequently unselected by dragging pointing cursor 937 in a direction towards selection point 930 so that pointing cursor 937 generally moves in a direction opposite to the direction used to select the text. To illustrate an example of such text selection, highlighted text portion 944 of text 968 may result from dragging pointing cursor 937 from selection point 930 to endpoint 932, as shown in FIG. 10, for example. Information regarding which portions of text are to be displayed in a highlighted fashion, such as highlighted text portion 944, may be included with comment data. Of course, such details of highlighting text are merely examples, and claimed subject matter is not so limited.

As indicated above, text included in visual content, such as text 968 for example, may be generated from a bitmapped representation maintained separately from bitmapped image data used to generate the visual content. Selecting such a bitmapped representation of text may involve receiving signals that represent a user's cursor movements over the text. Here, such cursor movements may include selecting particular portions of text by clicking a mouse or other pointer in a GUI, for example, at one or more locations in the visual content. Accordingly, selected text may be displayed in a highlighted fashion based at least in part upon such cursor movements and locations of individual elements of the text, wherein information regarding such element locations may be provided by a markup language document, such as an XML document, for example.

FIG. 11 is a sample listing of a markup language code, according to an embodiment. For example, markup language code 908 may comprise a portion of an HTML or XML document. Such markup language code 908 may specify where in a display text elements are to be located, which direction and/or order that such text flows, and/or which portions of text belong together, for example. As described earlier, such markup language code 908, which may describe text element locations, ordering, orientation, and so on, may be maintained separately from bitmapped image data used to generate an image of such text elements. In other words, information, such as text element locations, represented by such markup language code 908 need not include, and may be independent of, the text elements themselves: such text elements may be maintained separately, as bitmapped representations, for example, as explained earlier.

Markup language code 908 may include display coordinates to position text elements, text lines, text flow, and so on. For example, the markup language code 908 shown in FIG. 11 includes a hierarchy of elements, such as textParcel elements 910, parcel elements 912, line elements 914, and glyphRange elements 916. TextParcel elements 910 may comprise a list of text fragments (or parcels) that may be part of text flows. A parcel element 912 may have properties that denote text fragment width and height, an optional matrix-based transform to position, scale, and/or rotate a text fragment within coordinate space defined by markup language code 908. A parcel element 912 may also have properties that identify which text flow parcel element 912 is associated with and its position in the particular text flow.

A textParcel element 910 may include one or more line elements 914 that may individually comprise width and height properties and/or a matrix-based transform to position, scale and/or rotate text flow within coordinate space defined by textParcel element 910, for example. A line element 914 may include one or more glyphRange elements 916 that may individually comprise width and height properties and/or a matrix-based transform to position, scale, and/or rotate text flow within coordinate space defined by line element 914, for example. A glyphRange element 916 may comprise a direction property that allows an application to support text scripts, such as Arabic for example, which may read from right to left. Individual glyphRange elements may include a list of number pairs 918 separated by a semicolon. An individual number pair 918 may describe a character glyph, width, and/or index within a text flow.

In an implementation, such markup language code 908 may be used in a review process, as described in the following examples. If a user selects text using a mouse by clicking on a start point, dragging the mouse, and releasing the mouse button over an end point, a review process may determine which character glyphs to use as start and end points. Such a determination may be made, for example, by first searching for the text parcel that the mouse pointer points to by comparing the mouse pointer's current coordinates with the width, height, and/or transform properties of text parcels in a document until such a particular text parcel is found that encloses the mouse pointer's current location. A similar search may be performed for line elements contained within the text parcel. Again, a similar search may be performed for glyph ranges with each glyph until such a search finds a character glyph whose bounding box encloses the current mouse pointer coordinates.

In another example, if a user selects text or the user selects a comment that includes a text selection, a review process may highlight the selected text by drawing a number of quadrangles which are determined by finding glyphs that lie between a start and end index of the selection (including the start and end indexes). Such a determination may take into account an accumulative effect of one or more transformation matrices of the current markup language code branch. Such a process may be performed by traversing the hierarchy of markup language code 908 to collect one or more quadrangles of affected character glyphs. Such a process may use “startOffset” and/or “endOffset” properties at various levels of the hierarchy to avoid traversing branches that don't contain any of the character glyphs in question. Of course, such details of using a markup language code in a review process are merely examples, and claimed subject matter is not so limited.

Particular markup language code may be generated and/or modified during an authoring process that creates an image file and/or in response to a user selecting portions of text, as described above. For example, as explained above, electronic content submitted for a review process may be created using a special purpose multimedia computer platform, such as Adobe Systems' Creative Suite® collection of graphic design, video editing, or web development applications. In a particular example, Adobe Systems' Photoshop® graphics editing program may be used to create a graphical file, e.g., a bitmapped image formatted as a document, which may include text. Accordingly, such a graphics editing program may generate markup language code that represents locations, orientations, and/or sequence of elements in text that are included in the graphical file. In a particular embodiment, such a bitmapped image document may be stored and/or transmitted separately from a markup language code document that represents locations and sequences of elements and/or portions of text shown in the bitmapped image document. For example, in an electronic content editing process, an editor working on a special purpose client device may initiate such an editing process by uploading a bitmapped image document separately from an associated markup language code document to a review management server via a network. Subsequently, such a review management server may provide the bitmapped image document separately from the associated markup language code document to one or more reviewers working on one or more special purpose client devices. Such documents may also accompany reviewer comments, as described above.

In an implementation, using a markup language code document to represent text included in a bitmapped image document may allow users working with a diversity of client devices with varying processing abilities and platforms to select particular portions of such text in a review process without a need for a text editing application. Such an editing application, for example, may be relatively large and cumbersome to use with a thin client. In addition, users working with a diversity of client devices with varying processing abilities and platforms may all select text during a review process in a similar fashion, so that such a review process may provide a relatively universal user experience among its users.

In an implementation, markup language code representing text included in a bitmapped image document may be maintained and/or transmitted separately from the bitmapped image document. Such an implementation may provide an advantage including an ability to preserve information regarding text and/or an image document if either one is modified during a review process. For example, one or more reviewers providing comments and/or edits, highlighting text, and/or other such visual content modification may be represented by metadata that is represented by markup language code, such as that shown in FIG. 11, for example. In this fashion, visual content provided by a server may be modified and/or commented on by a user at a client device, though such modifications and/or comments need not modify the visual content that is maintained by the server. Instead, such modifications and/or comments performed at a client device may be represented by metadata, which may comprise markup language code, for example, communicated to a server. Of course, such a representation of visual content modification is merely an example, and claimed subject matter is not so limited.

In an alternative embodiment, a user at a client device, for example, may select a portion of an image generated from signals representing a bitmapped image stored in a memory. A selected portion, for example, may comprise a thumbnail image, an icon, a graphical element, and/or other such content that an image may include. Such a selection, in one implementation, may be made using a cursor of a pointing device, as described above; a selection may be made by positioning such a cursor over a particular location over the image, for example. Whether the particular location is in a predefined region of the image may be based, at least in part, on information maintained in an extensible markup language (XML) document. Such an XML document need not contain any information or data that is used to generate display of the image, and may be maintained separately from bitmapped image stored in a memory, which may be used to generate display of the image. In another implementation, signals representing a bitmapped image may comprise a JPEG file, for example. Such a selection of a portion of an image may initiate a review process, as described above.

In another embodiment, in response to user-selected highlighted text, such as highlighted text portion 944, a bounding box 950 may appear in display 200 to prompt a user to enter a comment or an edit, as shown in FIG. 12. In particular, a blinking cursor 955 may prompt a user to type a comment regarding highlighted text portion 944, though claimed subject matter is not limited to such an example. Upon or after completion of typing a comment or edit in bounding box 950, the comment or edit may be communicated to a special purpose electronic content management server on a network, along with information representing highlighted text portion 944, where the comment or edit and the associated highlighted text portion 944 may be stored or distributed to one or more reviewers or an editor participating in an associated review process, for example.

From such an electronic content management server on a network, a comment may be downloaded to a reviewer's client device to appear as a comment entry 250 listed in comment panel 215, as shown in FIG. 13. Such a comment panel 215 may be used for posting or viewing one or more comments during a review process, for example. Displaying such a comment panel in display 200 may be a user-selectable function; a user may wish to view comments at one time, while preferring to maximize a view area to display visual content 208 at another time, for example. In one implementation, comments with edited and/or selected text may be exchanged among reviewers in a real-time process. Meanwhile, selection point 930 and an outline of bounding box 946 may remain displayed in a foreground of visual content 208. In a particular embodiment, and without additional action by a user, selection point 930 may be labeled by a selection icon 933 that may be used with a comment to reference the portion of text to which the comment refers, as explained below.

Comment entry 250 may include a comment, the name or identification of the reviewer who made the comment, the day and time that the comment was made, and a color-coded icon 252 that corresponds to selection icon 933, which may provide a unique number or identification to the comment, for example. In one implementation, selection icon 933 may be color-coded according to the particular reviewer who is posting the comment. In another implementation, edits may be color-coded according to the particular reviewer who has performed the edits. Such color-coding will be explained in further detail below. A selected portion of text associated with a comment or edit may in one embodiment comprise a highlighted portion of text, such as highlighted text portion 944 selected by a reviewer, for example. By associating such a selected portion of text with an individual comment or edit, a reviewer or editor may ascertain to which portion of visual content the comment or edit refers, as indicated above.

As suggested in an embodiment, particular colors among a palette of colors may be assigned by the particular platform to one or more users. In other words, individual participants, such as reviewers or editors, may be assigned a unique color without direction or instruction. An electronic content management server, for example, may select colors for participants based at least in part on a notion of providing highly contrasting colors to different participants to ease identification of individual reviewers or editors. Such color contrast may be based, at least in part, on a selected palette or on color computation. For example, without limitation, a first reviewer may be assigned the color red, a second reviewer may be assigned the color yellow, a third reviewer may be assigned the color green, and so on. Such an assigned color may be applied to participant' comments, edits, or associated icons, such as comment entry 250 or color-code icon 252 shown in FIG. 13, for example. In one implementation, such an assignment of colors to particular reviewers may be maintained throughout a review process, though in other implementations ways to update such an assignment may also be included. For example, a user may request a color assignment change, or a reassignment of colors may occur without specific user instructions or intervention if one or more participants drops out of a review process, just to mention a few examples. During or after such a color assignment change, review panels, applications, or platforms of the participants of a review process may then be updated to reflect the color assignment change. Of course, such a description of color assignment and color management is merely an example, and claimed subject matter is not so limited.

Continuing with FIG. 13, a reviewer may choose to edit or modify visual content 208 or a selected portion of visual content 208, such as text 968, by using an application of his or her choice, independent of the particular application used to create or previously modify the visual content, as suggested previously. For example, a host application, such as Adobe Systems' Photoshop® graphics editing program, may be used to display visual content 208 on a canvas area of application or platform environment 209, where edits or modifications may be made, for example. However, it should be noted that one of the benefits provided by an embodiment of an electronic content editing process as described is that a variety of host applications or graphics editing programs may be used, and claimed subject matter is not limited to a particular application or program. While viewing visual content, a reviewer may post a comment or edit or modify the displayed visual content. The reviewer may manage his or her review by using comment panel 215, which may provide options to communicate his or her comments or edited or modified visual content to an electronic content management server so the comments, edits, or modifications may be viewed by other users. Though visual content may be modified during a review process, the original visual content may remain intact in a location in a memory. However, in a particular embodiment, individual modified versions of visual content, e.g., visual content modified at various stages of a review process, may also be maintained in other locations in a memory.

In an embodiment, a review panel, such as review panel 115 for example, may be referred to as a comment panel if such a review panel is displayed on a display of a reviewer. Such a comment panel may include features of a review panel, as described herein, but may provide a visual experience that is suited to a reviewer, wherein a review panel may be more suited to an editor or project manager, though claimed subject matter is not so limited. For example, comment panel 215 may comprise a default display that lists comments, whereas a review panel may comprise a default display that lists review processes, such as pending or completed review processes. Again, such details are merely examples, and claimed subject matter is not so limited. Comment panel 215 may be displayed in a foreground of visual content 208 or arranged along an edge or other portion of application or platform environment 209 as shown in FIG. 13. Comment panel 215 may be moved within display 200 by a user as well, of course. Display 200 may also include a page caption panel 225 comprising, for example, a caption or title regarding visual content 208, for example. As indicated previously in an example, visual content 208 may comprise a JPEG image including text 968 displayed by a platform or application, though visual content is not limited to such a format or to only image content. Of course, such details of a display or a comment panel are merely examples, and claimed subject matter is not so limited.

As discussed above, comment panel 215 may be displayed on a special purpose client device to display dynamic or user-selectable content for commenting during a review process. For example, comment panel 215 may display elements that are user-selectable for a variety of commenting operations, which will be explained in greater detail below. In a particular embodiment, comment panel 215 may be generated using, at least in part, a special purpose multimedia computer platform used by a special purpose client device, or an application such as Adobe Systems' Flash® platform, for example. However, comment panel 215 may provide a similar user experience, e.g., look and feel, for a variety of varying platforms that may be used to generate the comment panel. Accordingly, multiple users, despite working on different platforms with different applications, may view a sufficiently standardized comment panel layer that displays or provides access to information that may be substantially the same, or at least employs standardized features, across multiple users.

In one embodiment, an application operating for a special purpose client device may be modified in order to facilitate generation of comment panel 215. For example, but not to be limiting, such a modification may include adding code, script, or subroutine(s), for example, to allow generation of comment panel 215. Accordingly, such a modified application may process received information regarding one or more review processes to populate comment panel 215 with dynamic or user-selectable content or to be updated continually or from time to time. Such information may be received from an electronic content management server that may store and reference such information via a user-ID associated with a special purpose client device, for example. Of course, such a relation between a special purpose client device and a special purpose network server is merely an example, and claimed subject matter is not so limited.

In an embodiment, shown in FIG. 14, a reviewer that made the comment or edit associated with comment entry 250 may make an additional comment by again clicking on a portion of visual content 208 to create another selection icon 959, for example. Also, the reviewer may again edit or modify visual content 208 as described above. The comment associated with selection icon 959 may be listed in comment entry 254, which may include color-coded icon 256, the additional comment, and so on. Yet another comment entry 258 may include another comment 262, this time by another reviewer, for example. Because another reviewer made the comment of comment entry 258, an associated color-coded icon 260 may comprise a different color than that of comment entries 250 and 254, for example. In a particular embodiment, comment entry 258 may provide an opportunity for another reviewer to reply to comment 262 of comment entry 258, thereby posting an additional comment 264 listed in comment entry 258 as a result.

As explained above, as reviewers make comments or edits during a review process, such comments or edits may be communicated to an electronic content management server on a network, where such information may be maintained or accessible to one or more users, e.g., reviewers or an editor. Also, individual comments or edits may be associated with a selected portion of visual content to which the comment or edit pertains, and such an association or selected portion may also be maintained or be accessible to one or more reviewers or an editor.

In FIG. 15, a review panel 115 displayed in a foreground of an editor display 113 may reflect review process information downloaded from a special purpose electronic content management server on a network continually or from time to time. In other words, as one or more reviewers comment on or edit visual content 108, such comments, edits, or associated selected portions 315 of visual content may be posted in review panel 115. In one embodiment, such postings may be in real-time. Accordingly, such a special purpose electronic content management server may facilitate convenient collaboration among participants by keeping participants apprised of comments or visual content edits as they occur, for example. To continue an example presented in FIG. 4, review panel 115 may display information 310 in the list or arrangement of review processes 120 comprising the number of comments or edits in a particular review process, the number of participating reviewers, or the number of reviewers currently active, just to name a few examples. Upon or after selection, a review process listing in review panel 115 may be expanded to show all or a portion of comments or edits made in the review process, along with selected portions of visual content associated with the comments or edits.

Comments may be presented in a comment arrangement 320, wherein an editor may rearrange, delete, or tag comments, just to name a few examples of comment-management operations. For example, the list of comments 320 may be organized or rearranged by a user using a mouse to click and drag, or other selecting device for example, individual comments above or below one another. In another particular implementation, a user may select to use an electronic content management server to organize or rearrange the list of comments chronologically, alphabetically, by reviewer, by deadline, or by importance, just to name a few examples. Individual comments may be selected to display their associated content selection. For example, comment 362 may be selected to display associated content selection 360, which may comprise a portion of text that a reviewer selected to make comment 362. Such management operations may also be available to other users, not just editors or reviewers, for example. Of course, such details of a review panel are merely examples, and claimed subject matter is not so limited. In one embodiment, a user may select content selection 360 from review panel 115 to review, edit, and/or modify the associated text selection. Edited or modified text may be electronically posted onto an electronic content management server by selecting a command to do so from the review panel 115, for example. Other reviewers may subsequently view edited or modified visual content, such as modified text, as it is presented in their review panel 115. As discussed above, such editing or modifying is not limited to a particular platform or application, but may be performed using any platform or application that is available on a special purpose client device or preferred by a user. Accordingly, participants of a review process using review panel 115 may be provided with a convenient way of collaborating with one another while working on a platform or application of their choice.

In one embodiment, one or more portions of text and/or visual content may be highlighted within an original document that was previously submitted to a review process, as described above. Such an original document may be rendered by an application that was used to author the original document. For example, such an original document may have been authored and viewed as an edited document using InDesign® desktop publishing application, though claimed subject matter is not so limited. Highlighted portions of a document may provide a convenient way for a user to find portions of the document that have been commented on during a review process, for example.

In one implementation, information regarding comments directed to a document may be captured and stored in memory. For example, such information may comprise an XML representation of text of a comment along with text reference information that describes which text flow the comment is associated with and/or a text character range. Such information may also comprise an XML representation of highlighted text, including information that describes which text flow and/or text character range is highlighted. Subsequently, such information, which may comprise one or more XML files, may be provided to an authoring application that may be used to view and/or edit the document, as indicated above. Of course, such an implementation of representing comments and/or highlighted text is merely an example, and claimed subject matter is not so limited.

In one particular embodiment, as mentioned earlier, portions or elements of selected portions of electronic content associated with comments or edits may be selectively omitted upon being displayed in review panel 115 in order to avoid a cluttered or confusing display. For example, a presence of multiple selection points, where comments or edits may be placed, in a selected portion of visual content may lead to some selection points positioned at least partially over other selection points, resulting in a confusing display, as described earlier. Accordingly, some overlapping selection points and their associated comments or edits may be selectively omitted in a selective modification process. Of course, such a process of displaying less than the complete visual content is merely an example, and claimed subject matter is not so limited.

FIG. 16 is a flow diagram of an electronic content editing process 500, according to an embodiment. Such a process may involve an editor 505 or a reviewer 508 participating in a review process for electronic content, for example. Such electronic content may comprise one or more images or a portion of video content, such as a video clip. For example, a collection of one or more video files may comprise a video clip, although not necessarily. In a particular embodiment, process 500 may involve more than one reviewer or editor. However, alternatively, there may be multiple reviewers or one editor, just to illustrate various non-limiting example.

Activities of an editor may include composing electronic content for review, as shown at block 510. Such an editor may review electronic content, observe or manage one or more reviewers' comments or edits, or resubmit electronic content for further review, just to name a few example activities. A reviewer's activities may include reviewing electronic content or generating comments or edits, which may be captured electronically along with a selected portion of electronic content to which the comment or edit pertains, for example.

In one implementation, in the case of visual content, a reviewer may have an option to view such a selected portion of visual content with obstructive visual material removed. For example, selection points, edit marks, or other markings made during previous reviews may obstruct visual content to which a comment pertains. Accordingly, a reviewer may choose to selectively remove such obstructive markings. Or, in an embodiment, such obstructions may be removed without any user action or instruction.

At block 520, if electronic content is deemed ready to be reviewed for example, editor 505 may “publish” electronic content for review. Publishing may comprise uploading electronic content or associated information to an electronic content management server on a network, where such content or associated information may be stored or be made accessible to one or more reviewers. For example, such an electronic content management server may act as a hub for an electronic content review process. Associated information may comprise an editor's notes, comments, edits, or instructions to one or more reviewers regarding electronic content, as well as attributes associated with the electronic content.

At block 530, reviewer 508 may receive electronic notification that particular electronic content is available to review. Such electronic notification may comprise an appearance on a display of an icon or a dialog box, for example, of a new work item or task, or an electronic document such as email, for example. Reviewer 508 may select particular electronic content to review, which may include viewing the particular electronic content, as shown at block 540. Electronic content for review may include associated electronically captured comments or edits from a previous editor or one or more reviewers. Such comments or edits may include a snapshot associating the comments or edits with a particular portion of electronic content, for example. As part of a review, reviewer 508 may add his or her comments or edits to the electronic content, which may also be captured electronically, as shown at block 550. A snapshot associated with previous comments may also be associated with new comments or edits, if such comments or edits pertain to the particular portion of electronic content, for example. Of course, such details of comments, edits and/or associated snapshots are merely examples, and claimed subject matter is not so limited.

At block 560, reviewer 508 may interact with other reviewers, perhaps in real time, such as via a LAN, WAN, or the Internet. For example, a second reviewer, having received electronic content for review over an electronic network from an electronic content management server, may also receive comments, edits, or an associated snapshot from a first reviewer via the electronic content management server. In one particular embodiment, the second reviewer may, subsequent to receiving the electronic content, review the electronic content, post additional comments, or edit the electronic content and subsequently post the edited electronic content. As mentioned above, such editing may be performed by an application independent of the application used to create the electronic content, or applications other reviewers may be using, and so on. Such additionally-posted comments or edited electronic contents (which may also accompany additionally-posted comments) may be available to the first reviewer in real-time via the electronic content management server, for example, depending at least in part on whether both reviewers are concurrently engaged in a review process for particular electronic content. In such a case, a reviewer may view other reviewers' comments, edits, or associated electronic content as the comments, edits, or electronic content are being electronically posted or electronically captured for the other reviewers. Such a real time process is, of course, not limited to two reviewers; any number of reviewers may be engaged in a review process. On the other hand, a reviewer may be disengaged or off-line from a real-time interaction as described above while other reviewer comments or edits remain available on the electronic content management server to the disengaged reviewer at his or her convenience. In such a case, a subset of other participating reviewers may be involved in real-time collaboration

At block 570, after completion of a particular review, which may include electronically captured comments or edits, as well as modified electronic content, reviewer 508 may electronically notify editor 505 that the reviewer has completed his or her review. Such notification may be posted on the electronic content management server by reviewer 508 so that editor 505 may receive such notification, as shown at block 580. In an embodiment, such a notification may include an appearance on an editor's display of a review panel, such as review panel 115 in FIG. 4 for example, that may include updated reviewer information. Other reviewers, if any, may not have completed their review, so the particular review process may continue until expiration, for example.

In an embodiment, editor 505 may select a particular review process to review a collection of comments or edits from one or more reviewers, as at block 590. In a particular embodiment, editor 505 may also add further electronic comments or edit visual content, responsive to previous reviewer comments or edits, for example. In another particular embodiment, one or more editors, reviewers, or other users may select which particular review participants may view particular comments or edited electronic content. For example, some reviewers may be allowed to view particular comments or edited electronic content while other reviewers are not permitted to view such information. Subsequently, editor 505 may submit a new, revised version of electronic content as a new review, as at block 595, thus repeating at least a portion of electronic content editing process 500, if desired. Such a new review may maintain features of the original review, such as color-code assignments or list of participants, though editor 505 may modify such features, if desired. A new review may be named descriptively, such as “Review—second pass” so that participants may easily realize that the new review is related to a particular original review, for example. Of course, such features are merely examples, and claimed subject matter is not so limited.

FIG. 17 is a flow diagram to show particular features that may be present in an electronic content editing process for electronic content as described above. Of course, claimed subject matter is not limited in scope in this respect. Accordingly, review process 800 may comprise a portion of such an electronic content editing process, according to an embodiment. Starting at block 810, a process management engine, such as process management engine 701 in FIG. 1, may generate a list of reviewers for a particular review process. Such a determination may, for example, be based at least in part on past review processes, requests posted by an editor, or availability of reviewers, just to name a few examples. At block 820, electronic content, associated comments, or edits to be distributed to reviewers may be encrypted for security reasons. Whether particular electronic content or associated comments or edits are encrypted may depend at least in part on a variety of potential factors, such as which reviewer is to be sent particular visual content, as one example. Such encryption may be implemented during process 800, for example, according to a selection made by an editor or a reviewer. Process management engine 701 may determine if electronic content, its associated comments, or edits are to be encrypted, for example. In one implementation, such encryption may be applied to any combination of electronic content or associated review comments. Likewise, such encryption may be transparent to participants of a review process. Such encryption may also include digital rights management (DRM) information or user-permission information, such as access passwords, user identification, or the like. In another implementation, a combination of electronic content or associated review comments or edits may be digitally compressed to reduce communication bandwidth issues. At block 830, electronic content may be electronically distributed or broadcasted to reviewers or an editor for completion of review tasks regarding the electronic content. Process 800 may also include transforming a format of electronic content, for example. Such a transformation may be implemented, for example, during a process. In a particular embodiment, electronic content may be transformed for compliance or compatibility with systems of particular editors or reviewers. As an example, a reviewer may be using a handheld device having a low-resolution picture format, whereas another reviewer may use a workstation having a high-resolution picture format. Accordingly, a process management engine may employ appropriate picture formats for the particular devices used by particular editors or reviewers. In a particular example, after full resolution visual content is uploaded or “dropped” in a system folder, a process management engine may broadcast information based, at least in part, on the full resolution visual content via multiple distribution channels. Such information may be generated by an encoding process that generates multiple visual content versions having a specific resolution and bit rate targeted for an array of delivery channels corresponding to a particular set of editors or reviewers and their device or other resource capabilities. For instance, one channel may be employed to provide high definition playback on a local area network, another channel may be employed to provide high definition playback on a high speed network, and another channel may be employed to provide a scaled-down version for cable, Digital Subscriber Line (DSL) connections or for mobile devices. In another particular example, such generated information may be stored in multiple files, which may be accessible by a streaming media server. Accordingly, if an editor or reviewer “logs” into a process management engine, visual content may be streamed from a media server with an appropriate version of the visual content based at least in part on the particular picture format or available bandwidth. In a particular embodiment, a process management engine may be capable of dynamically changing stream quality “on the fly” if network conditions change, such as a reduced bandwidth condition developing from increased high speed network traffic.

It will, of course, also be understood that, although particular embodiments have just been described, claimed subject matter is not limited in scope to a particular embodiment or implementation. For example, one embodiment may be in hardware, such as implemented on a device or combination of devices, as previously described, for example. Likewise, although the claimed subject matter is not limited in scope in this respect, one embodiment may comprise one or more articles, such as a storage medium or storage media, as described above for example, that may have stored thereon instructions that if executed by a specific or special purpose system or apparatus, for example, may result in an embodiment of a method in accordance with claimed subject matter being executed, such as one of the embodiments previously described, for example. As one potential example, a specific or special purpose computing platform may include one or more processing units or processors, one or more input/output devices, such as a display, a keyboard or a mouse, or one or more memories, such as static random access memory, dynamic random access memory, flash memory, or a hard drive, although, again, the claimed subject matter is not limited in scope to this example.

In the preceding description, various aspects of the claimed subject matter have been described. For purposes of explanation, specific numbers, systems, or configurations may have been set forth to provide a thorough understanding of claimed subject matter. However, it should be apparent to one skilled in the art having the benefit of this disclosure that claimed subject matter may be practiced without those specific details. In other instances, features that would be understood by one of ordinary skill were omitted or simplified so as not to obscure claimed subject matter. While certain features have been illustrated or described herein, many modifications, substitutions, changes or equivalents may now occur to those skilled in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications or changes as fall within the true spirit of claimed subject matter. 

1. A method, comprising: receiving one or more signals representative of cursor movements over a bitmapped representation of text in a bitmap image, wherein the cursor movements are applied directly to the bitmap image; determining one or more selected text elements based on the cursor movements, wherein said determining includes searching a data structure that includes information regarding text element locations corresponding to the bitmapped text representation in the bitmap image, wherein the data structure is separately stored from the bitmap image, and wherein the data structure is generated upon creation of the bitmap image; in response to the cursor movements applied directly to the bitmap image, highlighting at least a portion of the bitmapped representation of text corresponding to the determined one or more selected text elements.
 2. (canceled)
 3. The method of claim 1, wherein the data structure comprises an extensible markup language (XML) document.
 4. The method of claim 1, wherein the bitmap image comprises a joint photographic experts group (JPEG) file.
 5. The method of claim 1, further comprising: initiating a review process in response to said receiving.
 6. The method of claim 5, wherein said review process comprises: displaying a text box to enter text comprising review information.
 7. The method of claim 6, further comprising: associating said review information with the highlighted portion of the bitmapped representation of text.
 8. The method of claim 1, wherein said highlighting at least a portion of the bitmapped representation of text is performed using a pointing or selecting device.
 9. The method of claim 1, further comprising: highlighting at least a portion of said text within an original document by an application that was used to author said original document.
 10. An apparatus, comprising: means for receiving one or more signals representative of cursor movements over a bitmapped representation of text in a bitmap image, wherein the cursor movements are applied directly to the bitmap image; and means for determining one or more selected text elements based on the cursor movements, wherein said determining includes searching a data structure that includes information regarding text element locations corresponding to the bitmapped text representation in the bitmap image, wherein the data structure is separately stored from the bitmap image, and wherein the data structure is generated upon creation of the bitmap image; means for highlighting at least a portion of the bitmapped representation of text corresponding to the determined one or more selected text elements in response to the cursor movements applied directly to the bitmap image.
 11. (canceled)
 12. The apparatus of claim 10, wherein the data structure comprises an extensible markup language (XML) document.
 13. The apparatus of claim 10, wherein the bitmap image comprises a joint photographic experts group (JPEG) file.
 14. The apparatus of claim 10, further comprising: means for initiating a review process in response to said receiving.
 15. The apparatus of claim 14, wherein said review process comprises: displaying a text box to enter text comprising review information.
 16. The apparatus of claim 15, further comprising: means for associating said review information with the highlighted portion of the bitmapped representation of text.
 17. The apparatus of claim 10, further comprising: means for highlighting at least a portion of said text within an original document by an application that was used to author said original document.
 18. An article, comprising: a storage medium comprising machine-readable instructions stored thereon which, if executed by a special purpose computing device, are adapted to enable said special purpose computing device to: receive one or more signals representative of cursor movements over a bitmapped representation of text in a bitmap image, wherein the cursor movements are applied directly to the bitmap image; determine one or more selected text elements based on the cursor movements, wherein said determining includes searching a data structure that includes information regarding text element locations corresponding to the bitmapped text representation in the bitmap image, wherein the data structure is separately stored from the bitmap image, and wherein the data structure is generated upon creation of the bitmap image; in response to the cursor movements applied directly to the bitmap image, highlight at least a portion of the bitmapped representation of text corresponding to the determined one or more selected text elements.
 19. (canceled)
 20. The article of claim 18, wherein the data structure comprises an extensible markup language (XML) document.
 21. The article of claim 18, wherein the bitmap image comprises a joint photographic experts group (JPEG) file.
 22. The article of claim 18, wherein said instructions, if executed by said special purpose computing device, are further adapted to enable said special purpose computing device to: initiate a review process in response to said receiving.
 23. The article of claim 22, wherein said instructions, if executed by said special purpose computing device, are further adapted to enable said special purpose computing device to: initiate said review process by displaying a text box to enter text comprising review information.
 24. The article of claim 23, wherein said instructions, if executed by said special purpose computing device, are further adapted to enable said special purpose computing device to: associate said review information with the highlighted portion of the bitmapped representation of text.
 25. The article of claim 18, wherein said instructions, if executed by said special purpose computing device, are further adapted to enable said special purpose computing device to: highlight at least a portion of said text within an original document by an application that was used to author said original document.
 26. An apparatus, comprising: a user-input device configured to generate a signal representative of cursor movements over a bitmapped representation of text displayed in an image, wherein the cursor movements are applied directly to the image; a display configured to render said image from a bitmapped representation of said image including said text; and a processor configured to: determine one or more selected text elements based on the cursor movements applied directly to the image, wherein said determining includes searching a data structure that includes information regarding text element locations corresponding to the bitmapped text representation in the image, wherein the data structure is separately stored from the image, and wherein the data structure is generated upon creation of the image; in response to the cursor movements applied directly to the image, highlight at least a portion of the bitmapped representation of text corresponding to the determined one or more selected text elements.
 27. (canceled)
 28. The apparatus of claim 26, wherein the data structure comprises an extensible markup language (XML) document.
 29. The apparatus of claim 26, wherein the bitmap image comprises a joint photographic experts group (JPEG) file.
 30. A method, comprising: receiving one or more signals representative of a selection of a cursor at a location over an image generated from signals representing a bitmapped representation of said image stored in a memory, wherein the selection of the cursor at the location is applied directly to the image; and determining whether said location is in a predefined region of said generated image based, at least in part, on information maintained in an extensible markup language (XML) document, wherein said XML document is maintained separately from said bitmapped representation of said image stored in said memory, and wherein the XML document is generated upon creation of the image.
 31. The method of claim 30, wherein said signals representing said bitmapped representation of said image comprises a joint photographic experts group (JPEG) file.
 32. The method of claim 30, further comprising: initiating a review process in response to said selection.
 33. The method of claim 32, wherein said review process comprises: displaying a text box over at least a portion of said image to enter review information.
 34. The method of claim 33, further comprising: associating said review information with electronic content displayed in said location.
 35. The method of claim 1, wherein the data structure further includes information regarding text element ordering and orientation.
 36. The method of claim 1, wherein the cursor movements indicate a downward selection of lines of the bitmapped representation of text, wherein the highlighted portion wraps around from a first selected line to a next selected line below to an endpoint.
 37. The method of claim 1, wherein said searching includes searching for a text parcel in the data structure by comparing a location corresponding to a current cursor location based on the one or more signals representative of cursor movements to properties of each of a plurality of text parcels until a matching text parcel is found. 